/*Stack_Calculator(简单计算器)
模拟简单运算器的工作。假设计算器只能进行加减乘除运算，运算数
和结果都是整数，四种运算符的优先级相同，按从左到右的顺序计算。*/
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>

int Calculate(char *input)
{
    int i = 0;
    int result = 0;
    int current = 0; // 当前数
    char op = '+';   // operater--操作符

    while (input[i] != '=' && input[i] != '\0')
    {
        // 确定数字
        while (isdigit(input[i]))
        {
            current = current * 10 + (input[i] - '0');
            i++;
        }

        // 运算
        switch (op) // 操作符先运算再更新
        {
        case '+':
            result += current;
            break;
        case '-':
            result -= current;
            break;
        case '*':
            result *= current;
            break;
        case '/':
            if (!current)
            {
                printf("ERROR\n");
                exit(0);
            }
            result /= current;
            break;
        default:
            printf("ERROR\n");
            exit(0);
        }

        op = input[i]; // 更新操作符
        i++;           // 下一位
        current = 0;   // 重置当前数
    }
    return result;
}

int main()
{
    char input[100];
    scanf("%s", &input);//fgets会读取换行符所以不能用
    int result = Calculate(input);
    printf("%d\n", result);
    return 0;
}
